home *** CD-ROM | disk | FTP | other *** search
- <?php
- // dados de acesso ao servidor MySQL
- $hostname = "localhost";
- $database = "blog";
- $username = "root";
- $password = "root";
- // conexao ao servidor MySQL
- $blog = mysql_pconnect($hostname, $username, $password) or trigger_error(mysql_error(),E_USER_ERROR);
- // seleccionar a BD a utilizar
- mysql_select_db($database, $blog) or die("nao encontrou a BD");
- // query (comando SQL)
- $query = "SELECT * FROM `posts` ORDER BY `ano` ASC, `mes` ASC, `dia` ASC";
- // processamento da query
- $posts = mysql_query($query, $blog) or die(mysql_error());
- // atribuir os valores de resposta a uma Array Associativa
- $row_posts = mysql_fetch_assoc($posts);
-
- // Estrutura XML gerada pelo PHP
- echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
- echo "<blog>";
-
- // ciclo DO WHILE
- do{
- // $row_posts['ano'] --> Valor da Array Associativa correspondente ao campo ANO da tabela respectiva
- echo "<ano ano=\"".$row_posts['ano']."\">";
- echo " <mes mes=\"".$row_posts['mes']."\">";
- echo " <dia id=\"".$row_posts['id']."\" dia=\"".$row_posts['dia']."\" titulo=\"".$row_posts['titulo']."\" texto=\"".$row_posts['texto']."\">";
-
- // query para os comentarios
- $query = "SELECT * FROM `comentarios` WHERE `idPosts`=".$row_posts['id']." ORDER BY `ano` ASC, `mes` ASC, `dia` ASC";
- $comentarios = mysql_query($query, $blog) or die(mysql_error());
- $row_comentarios = mysql_fetch_assoc($comentarios);
- // se existirem comentarios para o Post respectivo
- if($row_comentarios['id'] != ""){
- // ciclo DO WHILE para utilizar todos os comentarios que existam
- do{
- echo "<comentario ano=\"".$row_comentarios['ano']."\" mes=\"".$row_comentarios['mes']."\" dia=\"".$row_comentarios['dia']."\" nome=\"".$row_comentarios['nome']."\" texto=\"".$row_comentarios['texto']."\"/>";
- }while($row_comentarios = mysql_fetch_assoc($comentarios));
- }
- // libertar a memoria do servidor
- mysql_free_result($comentarios);
- echo " </dia>";
- echo " </mes>";
- echo "</ano>";
- // enquanto existirem valores na Array Associativa, o ciclo corre
- }while($row_posts = mysql_fetch_assoc($posts));
-
- echo "</blog>";
- mysql_free_result($posts);
- // terminar a ligaçao ao servidor MySQL
- mysql_close($blog);
- ?>